Metaprogramming in the Large
نویسندگان
چکیده
Software evolution demands continuous adaptation of software systems to continuously changing requirements. Our goal is to cope with software evolution by automating program transformation and system recon guration. We show that this can be achieved with a static metaprogramming facility and a library of suitable metaprograms. We show that former approaches of program transformations are not suÆcient for large object oriented systems and outline two base transformations that ll the gap.
منابع مشابه
Program Generation and Components
The first part of the paper gives a brief overview of metaprogramming, in particular program generation, and its use in software development. The second part introduces a basic calculus, related to FreshML, that supports program generation (as described through examples and a translation of MetaML into it) and programming in-the-large (this is demonstrated by a translation of CMS into it).
متن کاملTaxonomy of the Fundamental Concepts of Metaprogramming
Although widely used in software engineering, metaprogramming is often misunderstood. The researchers often disagree what concepts characterize metaprogramming. The concepts of metaprogramming are often used without acknowledging the usage of metaprogramming itself. We overview the examples and definitions of metaprogramming in computer science, identify, describe and discuss the fundamental co...
متن کاملPractical metaprogramming
Metaprogramming is the process of specifying generic software source templates from which classes of software components, or parts thereof, can be automatically instantiated to produce new software components. Metaprograms are specified in an annotated by-example style accessible to ordinary programmers of the source language. Annotations are in the form of Prologlike predicates that specify th...
متن کاملRe ection in Oberon
We introduce metaprogramming facilities into the Oberon V system Metaprogramming means that a module can access the struc ture of other modules i e procedures types run time data at run time We discuss how type safety can be enforced in an environment with strong typing Finally we show how metaprogramming can be used to implement an easy to use database interface and conclude with a com parison...
متن کامل